Using Virtual World Programming Languages To Teach Computer Science Concepts

نویسندگان

  • Brett Ward
  • Tim Bell
چکیده

1. Abstract With many secondary-level curricula being updated to incorporate a larger amount of computer science concepts, there is a need to identify sufficient ways to teach these concepts within languages commonly used at the appropriate age levels. Currently, languages like Alice, Scratch and Greenfoot, among many others, are both freely available and widely used to teach aspects such as programming, but little research has been done on whether they can actually be used to easily and sufficiently teach other concepts, such as algorithms and data representation. This paper discusses these such languages, and takes a look at how usable they actually are for performing some simple tasks. A number of computer science concepts are looked at in these languages, with implementation possibilities and difficulties overviewed, and discussion on how these languages could be enhanced to make it easier to teach the chosen concepts within them. Education in Computer Science (CS) is currently a large and rather mixed topic. Many secondary schools focus purely on teaching programming, with a varying array of languages such as Alice, Scratch, Java and Python being used, while others additionally teach some other concepts. Many schools also neglect to provide any sort of computer science course. Surveys like those done by the CSTA (http://www.csta.acm.org/) show these also show how much the topics covered can vary between schools [4]. But there are signs of change, with many curricula, such as the K-12 guidelines [14] and countries such as NZ (with a public draft available on the curriculum in [2]), the UK, and the USA being altered or updated to focus more on concepts related to computer science that are not directly programming in addition to the traditional programming skills taught. What CS actually is can often become also a rather confusing topic. Wikipedia (http://en.wikipedia.org/) explains CS as " the study of the theoretical foundations of information and computation " , with a large number of sub-fields including computational theory, computer graphics, programming language theory, and many more. The K-12 guidelines [14] describe CS as " the study of computers and algorithmic processes, including their principles, their hardware and software designs, their applications, and their impact on society. " In these cases the theory, concepts and principles are separated from the programming aspects. CS can also be clouded by how computers are used within schools – as tools for learning or creating documents, spreadsheets, or similar general …

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Concrete Programming for Problem Solving Skills

This paper describes a project that proposes a strategy to address the weaknesses in students abilities for abstract thinking and generic problem-solving skills. We suggest focusing on problemsolving skills outside textual programing by developing settings where descriptions of algorithmic solutions can be performed by physical and concrete constructions. It is a response to the decreasing perf...

متن کامل

Forty hours of declarative programming: Teaching Prolog at the Junior College Utrecht

This paper documents our experience using declarative languages to give secondary school students a first taste of Computer Science. The course aims to teach students a bit about programming in Prolog, but also exposes them to important Computer Science concepts, such as unification or depthfirst search. Using Haskell’s Snap Framework in combination with our own NanoProlog library, we have deve...

متن کامل

Teaching Programming to the Uninitiated Using Mathematica

In October 1997 an experiment was started to use Mathematica 4] in order to teach programming to rst year students of Technical Mathematics. In the rst semester the programming course focused on functional programming. The contents were determined by a parallel computer science course, where the programming language SML 3] was used as the basic notation. In this paper the experiences of using M...

متن کامل

Computation and State Machines

Preface For quite a while, I've been disturbed by the emphasis on language in computer science. One result of that emphasis is programmers who are C++ experts but can't write programs that do what they're supposed to. The typical computer science response is that programmers need to use the right programming/specification/development language instead of/in addition to C++. The typical industria...

متن کامل

Simula: Mother Tongue for a Generation of Nordic Programmers

With Simula 67 Ole-Johan Dahl and Kristen Nygaard invented object-oriented programming. This has had an enormous impact on program development tools and methods in the world, well accounted in conferences and books, on programming languages and object-oriented programming, and on software pioneers. Early influenced were computer scientists in the Nordic countries who from about 1970 had Simula ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009